package com.quanyan.stadium.entity.vo;

import com.quanyan.statium.api.req.GameCategory;
import com.quanyan.statium.api.req.GameGradeLevel;
import com.quanyan.statium.api.req.PayTypeModel;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * Created by xiao.lai on 16/5/26.
 */
public class GameEvent implements Serializable {

    private static final long serialVersionUID = -927191773957798974L;

    private Integer id;

    private String name;

    private String gameNumber;  //赛事编码

    private PlaceInfo placeInfo;

    private long startTime;

    private long endTime;

    private long signStartTime;

    private long signEndTime;

    private BigDecimal price;

    private GameCategory gameCategory;

    private GameSystem gameSystem; //赛制

    private long createTime;

    private Integer teamLimitNum;

    private Integer currentTeamNum;

    private GameEventHost gameEventHost;

    private MultiMedia multiMediaType;

    private Integer categoryId;

    private Long curTime = new Date().getTime();

    private Byte isJoin = 0;  //是否报名

    private Byte isForfeit = 0;  //是否弃权,默认是否

    private Byte isEnd = 0;  //是否结束

    private String shareMsg = "";

    private String shareUrl = "";

    private Byte gameTeamType;

    private Byte gameEventType;  //赛事类型

    private GameType  gameType; //赛事玩法

    private Byte isVisible; //赛事是否可见, 0:不公开;1:公开可见

    private GameGradeLevel gameGradeLevel;   //表示不限制等级

    private PayTypeModel payTypeModel;  //支付逻辑

    public String getShareUrl() {
        return shareUrl;
    }

    public void setShareUrl(String shareUrl) {
        this.shareUrl = shareUrl;
    }

    public GameGradeLevel getGameGradeLevel() {
        return gameGradeLevel;
    }

    public void setGameGradeLevel(GameGradeLevel gameGradeLevel) {
        this.gameGradeLevel = gameGradeLevel;
    }

    public Byte getIsVisible() {
        return isVisible;
    }

    public void setIsVisible(Byte isVisible) {
        this.isVisible = isVisible;
    }

    public Byte getGameEventType() {
        return gameEventType;
    }

    public void setGameEventType(Byte gameEventType) {
        this.gameEventType = gameEventType;
    }

    public Byte getGameTeamType() {
        return gameTeamType;
    }

    public void setGameTeamType(Byte gameTeamType) {
        this.gameTeamType = gameTeamType;
    }

    public String getShareMsg() {
        return shareMsg;
    }

    public void setShareMsg(String shareMsg) {
        this.shareMsg = shareMsg;
    }

    public Byte getIsEnd() {
        return isEnd;
    }

    public void setIsEnd(Byte isEnd) {
        this.isEnd = isEnd;
    }

    public Byte getIsForfeit() {
        return isForfeit;
    }

    public void setIsForfeit(Byte isForfeit) {
        this.isForfeit = isForfeit;
    }

    public Byte getIsJoin() {
        return isJoin;
    }

    public void setIsJoin(Byte isJoin) {
        this.isJoin = isJoin;
    }

    public Integer getCategoryId() {
        return categoryId;
    }

    public void setCategoryId(Integer categoryId) {
        this.categoryId = categoryId;
    }

    public MultiMedia getMultiMediaType() {
        return multiMediaType;
    }

    public void setMultiMediaType(MultiMedia multiMediaType) {
        this.multiMediaType = multiMediaType;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getGameNumber() {
        return gameNumber;
    }

    public void setGameNumber(String gameNumber) {
        this.gameNumber = gameNumber;
    }


    public PlaceInfo getPlaceInfo() {
        return placeInfo;
    }

    public void setPlaceInfo(PlaceInfo placeInfo) {
        this.placeInfo = placeInfo;
    }

    public long getStartTime() {
        return startTime;
    }

    public void setStartTime(long startTime) {
        this.startTime = startTime;
    }

    public long getEndTime() {
        return endTime;
    }

    public void setEndTime(long endTime) {
        this.endTime = endTime;
    }

    public long getSignStartTime() {
        return signStartTime;
    }

    public void setSignStartTime(long signStartTime) {
        this.signStartTime = signStartTime;
    }

    public long getSignEndTime() {
        return signEndTime;
    }

    public void setSignEndTime(long signEndTime) {
        this.signEndTime = signEndTime;
    }

    public BigDecimal getPrice() {
        return price;
    }

    public void setPrice(BigDecimal price) {
        this.price = price;
    }

    public GameSystem getGameSystem() {
        return gameSystem;
    }

    public void setGameSystem(GameSystem gameSystem) {
        this.gameSystem = gameSystem;
    }

    public long getCreateTime() {
        return createTime;
    }

    public void setCreateTime(long createTime) {
        this.createTime = createTime;
    }

    public Integer getTeamLimitNum() {
        return teamLimitNum;
    }

    public void setTeamLimitNum(Integer teamLimitNum) {
        this.teamLimitNum = teamLimitNum;
    }

    public GameCategory getGameCategory() {
        return gameCategory;
    }

    public void setGameCategory(GameCategory gameCategory) {
        this.gameCategory = gameCategory;
    }

    public Integer getCurrentTeamNum() {
        return currentTeamNum;
    }

    public void setCurrentTeamNum(Integer currentTeamNum) {
        this.currentTeamNum = currentTeamNum;
    }

    public GameEventHost getGameEventHost() {
        return gameEventHost;
    }

    public void setGameEventHost(GameEventHost gameEventHost) {
        this.gameEventHost = gameEventHost;
    }

    public Long getCurTime() {
        return curTime;
    }

    public void setCurTime(Long curTime) {
        this.curTime = curTime;
    }

    public PayTypeModel getPayTypeModel() {
        return payTypeModel;
    }

    public void setPayTypeModel(PayTypeModel payTypeModel) {
        this.payTypeModel = payTypeModel;
    }

    public GameType getGameType() {
        return gameType;
    }

    public void setGameType(GameType gameType) {
        this.gameType = gameType;
    }
}
